[CI] Split E2E/CTS tests into composite action#16739
Conversation
Two reasons:
* Make the workflow more maintainable as we're in the process of
adding another option (benchmarks)
* I want to move E2E build-only from a separate job to a step during
`sycl-linux-build.yml`. My first thought was to use in-tree E2E
configuration but then it mismatches how we'd run the tests (in a
standalone mode) and we have a bunch of tests using `rpath` during
compilation which can't work with such mismatch. As such, outlining
E2E support into a composite action would allow to share code
between build/run e2e tests in distinct jobs (build vs matrix
run-tests).
|
This is how logs for the failure would look like: https://github.com/intel/llvm/actions/runs/12914371704, a bit worse than before the PR, but not as bad as if the entire workflow was moved to a composite action (note that we did the opposite, composite action -> reusable workflow in #10292). The reason it's better now than prior to #10292 is because the "common" part of New Nightly run: https://github.com/intel/llvm/actions/runs/12916846102 |
| - name: Upload SYCL-CTS binaries | ||
| if: always() && !cancelled() && inputs.cts_testing_mode == 'build-only' | ||
| uses: actions/upload-artifact@v4 | ||
| uses: ./devops/actions/run-tests/e2e |
There was a problem hiding this comment.
I tried uses: ./devops/actions/run-tests/${{inputs.tests_selector}} but it doesn't work: https://github.com/intel/llvm/actions/runs/12898787585
| # This job takes ~100min usually. But sometimes some test isn't | ||
| # responding, so the job reaches the 360min limit. Setting a lower one. | ||
| timeout-minutes: 150 |
There was a problem hiding this comment.
I couldn't preserve this for whatever weird GHA reasons, hope that's fine for now. We can try to introduce another mitigation later if necessary.
There was a problem hiding this comment.
It was made due to weird machine that was hanging sometimes. No need to re-introduce.
sarnex
left a comment
There was a problem hiding this comment.
lgtm assuming all the actual logic is basically a copy-paste
Yes, other than the timeout I commented on. And also removal of now redundant pieces in check-spirv failures are unrelated, introduced by a recent docker image update. Merging to get some new pre/post-commit tasks post-merge before EOD (and to unblock other work). |
Two reasons:
sycl-linux-build.yml. My first thought was to use in-tree E2E configuration but then it mismatches how we'd run the tests (in a standalone mode) and we have a bunch of tests usingrpathduring compilation which can't work with such mismatch. As such, outlining E2E support into a composite action would allow to share code between build/run e2e tests in distinct jobs (build vs matrix run-tests).